package com.dabai.iot.core.dto;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * 设备查询实体类
 *
 * @author kev1n
 */
@Data
public class DeviceQuery implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Schema(description = "主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /**
     * 租户(服务商)Id
     */
    @Schema(description = "租户(服务商)Id")
    private String tenantId;

    /**
     * 产品Id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @Schema(description = "产品Id")
    private Long productId;

    /**
     * 设备序列号
     */
    @Schema(description = "设备序列号")
    private String deviceSn;

    /**
     * 设备序列号
     */
    @Schema(description = "设备名称")
    private String deviceName;

    /**
     * 状态
     */
    @Schema(description = "设备状态，0未激活 1在线 2离线 3已禁用")
    private Integer status;

    /**
     * 在线状态
     */
    @Schema(description = "在线状态 1:在线 0:离线")
    private Integer isOnline;

    /**
     * 激活状态
     */
    @Schema(description = "激活状态 0:未激活 1:已激活")
    private Integer isActive;

}
